Transaction Logging এবং Error Handling

Database Tutorials - আরাঙ্গো (ArangoDB) Transactions in ArangoDB |
247
247

ArangoDB তে Transaction Logging এবং Error Handling ডেটার সঠিকতা এবং নির্ভরযোগ্যতা নিশ্চিত করার জন্য গুরুত্বপূর্ণ। Transaction Logging ডাটাবেসে কার্যক্রমের একটি রেকর্ড তৈরি করে, যা সমস্যা সমাধান এবং ডিবাগিংয়ের জন্য ব্যবহৃত হয়। অন্যদিকে, Error Handling নিশ্চিত করে যে ত্রুটি মোকাবিলা করা হয়েছে এবং প্রয়োজন অনুযায়ী ব্যবস্থা নেওয়া হয়েছে।


Transaction Logging

Transaction Logging এর ধারণা

  • Transaction Logging হলো ডাটাবেসের প্রতিটি লেনদেন বা কার্যক্রমের একটি রেকর্ড রাখা।
  • এটি ডেটা সমন্বয়, ব্যাকআপ, এবং পুনরুদ্ধারে সহায়ক।

ArangoDB তে Transaction Logging কনফিগারেশন

ArangoDB তে লগিং সাধারণত Write-Ahead Logging (WAL) এর মাধ্যমে পরিচালিত হয়।

লগিং সক্ষম করা

ArangoDB তে লগিং ডিফল্টরূপে সক্ষম থাকে। তবে কাস্টম কনফিগারেশনের জন্য arangod.conf ফাইলে পরিবর্তন করতে পারেন:

[log]
level = info
output = file:///var/log/arangodb/arangod.log
  • level: লগ স্তর (info, debug, warning, error)।
  • output: লগ ফাইল সংরক্ষণের পথ।

Transaction লগিং দেখতে

আপনার ArangoDB লোগ ফাইলটি চেক করুন:

cat /var/log/arangodb/arangod.log

Transaction Logging এর সুবিধা

  1. অডিট ট্রেইল: প্রতিটি লেনদেনের ইতিহাস সংরক্ষণ।
  2. ডিবাগিং: সমস্যা সমাধানের জন্য কার্যক্রম পর্যবেক্ষণ।
  3. ডেটা পুনরুদ্ধার: লগ থেকে ডেটা পুনরুদ্ধার করা।

Error Handling

Error Handling এর মূলনীতি

  • ত্রুটির সনাক্তকরণ: ত্রুটি চিহ্নিত করা এবং সঠিক কোড ফেরত দেওয়া।
  • ব্যবস্থা গ্রহণ: ত্রুটি মোকাবিলার জন্য প্রয়োজনীয় কার্যক্রম।
  • ডেটা অখণ্ডতা রক্ষা: ত্রুটির কারণে ডেটা ক্ষতিগ্রস্ত হওয়া থেকে রক্ষা করা।

ArangoDB তে Transaction Error Handling

১. Error Handling এর জন্য Try-Catch ব্যবহার

AQL এবং ArangoDB SDK তে try-catch ব্লক ব্যবহার করে ত্রুটি মোকাবিলা করা যায়।

try {
  let result = db._query(`
    FOR doc IN myCollection
      FILTER doc.value > 100
      RETURN doc
  `);
  console.log(result);
} catch (err) {
  console.error("Error occurred:", err.message);
}

বর্ণনা:

  • try ব্লক সফলভাবে কোয়েরি চালানোর চেষ্টা করে।
  • যদি ত্রুটি ঘটে, catch ব্লক ত্রুটির বার্তা প্রদর্শন করে।

২. Transaction API তে Error Handling

let db = require("@arangodb").db;

try {
  db._executeTransaction({
    collections: {
      write: ["myCollection"]
    },
    action: function () {
      let collection = db._collection("myCollection");
      collection.insert({ key: "value" });
      throw "Simulated error"; // ত্রুটি ঘটানো
    }
  });
} catch (err) {
  console.error("Transaction failed:", err);
}

বর্ণনা:

  • action ফাংশনে লেনদেন পরিচালিত হয়।
  • ত্রুটি ঘটলে catch ব্লক তা সনাক্ত করে।

৩. ত্রুটির ধরন চিহ্নিত করা

ArangoDB বিভিন্ন ধরনের ত্রুটি কোড প্রদান করে।
উদাহরণ:

  • 1203: ডকুমেন্ট ইতিমধ্যে বিদ্যমান।
  • 404: কালেকশন বা ডকুমেন্ট পাওয়া যায়নি।
  • 409: কনফ্লিক্ট বা লক সমস্যা।
if (err.errorNum === 1203) {
  console.error("Document already exists!");
}

Transaction Logging এবং Error Handling এর সেরা চর্চা

  1. লগ স্তর নির্বাচন: অপ্রয়োজনীয় লগ এন্ট্রি এড়াতে info বা warning স্তর ব্যবহার করুন।
  2. ব্যতিক্রম পরিচালনা: ত্রুটি সম্পর্কে সুনির্দিষ্ট বার্তা তৈরি করুন।
  3. ডেটা ব্যাকআপ: ত্রুটি বা ডেটা ক্ষতির ক্ষেত্রে পুনরুদ্ধারের জন্য ব্যাকআপ রাখুন।
  4. লগ পর্যবেক্ষণ: নিয়মিত লগ পর্যবেক্ষণ করুন।

সারাংশ

Transaction Logging এবং Error Handling ডাটাবেসের ডেটা সুরক্ষা এবং নির্ভরযোগ্যতা বজায় রাখতে গুরুত্বপূর্ণ। ArangoDB তে লগিং এবং ত্রুটি পরিচালনা করার সহজ পদ্ধতি রয়েছে, যা ডেভেলপারদের কার্যক্রম পর্যবেক্ষণ এবং ত্রুটি মোকাবিলার সুযোগ প্রদান করে।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion